home *** CD-ROM | disk | FTP | other *** search
- #include "h/type.h"
- #include "h/const.h"
- #include "kernel/type.h"
- #include "kernel/const.h"
- #undef printf
-
- struct proc {
- #ifdef i8088
- int p_reg[NR_REGS]; /* process' registers */
- #endif
- #ifdef ATARI_ST
- long p_reg[NR_REGS]; /* process' registers */
- #endif
- int *p_sp; /* stack pointer */
- struct pc_psw p_pcpsw; /* pc and psw as pushed by interrupt */
- #ifdef i8088
- int *p_splimit; /* lowest legal stack value */
- #endif
- #ifdef ATARI_ST
- int *p_splow; /* lowest observed stack value */
- int p_trap; /* trap type (only low byte) */
- #endif
- int p_flags; /* P_SLOT_FREE, SENDING, RECEIVING, etc. */
- struct mem_map p_map[NR_SEGS];/* memory map */
- #ifdef ATARI_ST
- phys_clicks p_shadow; /* set if shadowed process image */
- int p_nflips; /* statistics */
- char p_physio; /* cannot be (un)shadowed now if set */
- #endif
- int p_pid; /* process id passed in from MM */
-
- real_time user_time; /* user time in ticks */
- real_time sys_time; /* sys time in ticks */
- real_time child_utime; /* cumulative user time of children */
- real_time child_stime; /* cumulative sys time of children */
- real_time p_alarm; /* time of next alarm in ticks, or 0 */
-
- struct proc *p_callerq; /* head of list of procs wishing to send */
- struct proc *p_sendlink; /* link to next proc wishing to send */
- message *p_messbuf; /* pointer to message buffer */
- int p_getfrom; /* from whom does process want to receive? */
-
- struct proc *p_nextready; /* pointer to next ready process */
- int p_pending; /* bit map for pending signals 1-16 */
- };
-